﻿/*
 * File: Npc.cs
 * Developer : Brent Larsen (brentoboy@gmail.com)
 * Date: 2011-AUG-9
 * Copyright (c) 2011 Brent Larsen.
 * Distributed under the terms of the GPL v3
 *  
 * This file is part of GenX-RPG
 * http://code.google.com/p/genx-rpg/ 
 * 
 * GenX-RPG is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * GenX-RPG is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with GenX-RPG.  If not, see <http://www.gnu.org/licenses/>.
 */


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Rpg
{
    public interface IInteractor
    {
        IEnumerable<Interaction> GetInteractions();
    }

    public class Interaction
    {
        public int[] Requirements;
        public string[] TriggerWords;
        public string YouSay;
        public string TheyReply;

        public Interaction(string word, string say, string reply)
        {
            this.Requirements = new int[] { };
            this.TriggerWords = new string[] { word };
            this.YouSay = say;
            this.TheyReply = reply;
        }
    }

    public class Npc : IInteractor
    {
        protected IEnumerable<Interaction> Interactions;

        public IEnumerable<Interaction> GetInteractions()
        {
            return Interactions;
        }
    }

    public class TestNpc : Npc
    {
        public TestNpc()
        {
            this.Interactions = new List<Interaction>()
            {
                new Interaction(null, null, "description of the guy"),
                new Interaction("hi", "Good morning, Sir", "“Greetings, I'm <some guy>”"),
                new Interaction("job", "So, how do you spend your time?", "“I do stuff.”"),
                new Interaction("stuff", "stuff?", "“You know... things.  Important things.”"),
            };
        }
    }
}
